package com.atomscat.lottery.entity.vo.request;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.persistence.Column;
import jakarta.validation.constraints.NotBlank;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
@Setter
@Getter
public class LotteryActivityRequest implements Serializable {
    private static final long serialVersionUID = 1L;

    @Schema(description = "Name of the lottery activity")
    @NotBlank(message = "Lottery Activity Name cannot be empty")
    private String name;


    @Schema(description = "Description of the lottery activity")
    private String description;

    /**
     * unpublished,
     * recruiting,
     * active,
     * ended
     */
    @Column(length = 32)
    @Schema(description = "Status of the lottery activity (unpublished, recruiting, active, ended)")
    private String status;

    /**
     * 1. Withdraw after winning,
     * 2. After winning, you can continue to participate in other levels of draws,
     * 3. After winning, you can continue to participate in other levels of draws but the total probability is 50% (customized)
     */
    @Schema(description = "Type of the lottery")
    private String lotteryType = "1";

    /**
     * 0. No limit,
     */
    @Schema(description = "Maximum number of participants")
    private Integer maxParticipants = 0;

    // QR code url
    @Schema(description = "URL of the QR code for the lottery activity")
    private String qrCodeUrl;
}
